package cn.iocoder.yudao.module.erp.controller.admin.dispatchvehicle.vo;

import cn.iocoder.yudao.module.erp.dal.dataobject.dispatchvehicle.DispatchVehicleDO;
import cn.iocoder.yudao.module.erp.dal.dataobject.dp.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.List;


@Schema(description = "管理后台 - 总配车信息新增/修改 Request VO")
@Data
public class DispatchVehicleSaveReqVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "21802")
    private Long id;

    @Schema(description = "单据表主键id")
    private String dpId;

    @Schema(description = "线路选择 东线1 西线2")
    private Integer line;

    @Schema(description = "发货人")
    private String sender;

    @Schema(description = "配车号")
    private String dispatchNumber;

    @Schema(description = "单号")
    private String no;

    @Schema(description = "始发地")
    private Integer origin;

    @Schema(description = "目的地")
    private Integer dest;

    @Schema(description = "线路详情")
    private String lineDetails;

    @Schema(description = "线路详情创建时间")
    private String addressCreateTimes;

    @Schema(description = "车到达地址")
    private String address;

    @Schema(description = "发货天数")
    private Integer deliveryDays;

    @Schema(description = "运费")
    private Double fare;

    @Schema(description = "供应商")
    private String supplier;

    @Schema(description = "车队名称")
    private String fleet;

    @Schema(description = "运输状态", example = "1")
    private Integer transportationStatus;

    @Schema(description = "出入库状态 1已出库 2已入库", example = "1")
    private Integer inventoryStatus;

    @Schema(description = "是否拆票 0否 1是")
    private Integer isSplit;

    @Schema(description = "本车件数")
    private Integer packagesTotal;

    @Schema(description = "本车重量")
    private Double weightTotal;

    @Schema(description = "本车体积")
    private Double volumeTotal;

    @Schema(description = "司机电话")
    private String driverPhone;

    @Schema(description = "备注")
    private String note;

    @Schema(description = "模板 0普通 异形从1自增")
    private Integer category;

    @Schema(description = "主表部分信息")
    private String dpData;

    @Schema(description = "记录出库时间")
    private String date;

    @Schema(description = "记录出库时间")
    private String recordDate;

    @Schema(description = "部门")
    private String department;

    @Schema(description = "币种")
    private Integer currencyType;

    @Schema(description = "摘要")
    private String remark;

    @Schema(description = "特殊运费")
    private Double expense;

    @Schema(description = "多个供应商运费信息")
    private List<DispatchVehicleDO> supplierInfo;

    @Schema(description = "义乌制单数据")
    private List<DpYwDO> dpYwDOList;

    @Schema(description = "广州制单数据")
    private List<DpGzDO> dpGzDOList;

    @Schema(description = "东宁制单数据")
    private List<DpDnDO> dpDnDOList;

    @Schema(description = "乌鲁木齐制单数据")
    private List<DpWlmqDO> dpWlmqDOList;

    @Schema(description = "阿拉木图仓库制单数据")
    private List<DpAlmtDO> dpAlmtDOList;

    @Schema(description = "比什凯克仓库制单数据")
    private List<DpBiskDO> dpBiskDOList;

    @Schema(description = "莫斯科仓库制单数据")
    private List<DpMskDO> dpMskDOList;

    @Schema(description = "乌苏里仓库制单数据")
    private List<DpWslDO> dpWslDOList;

    @Schema(description = "东线制单数据")
    private List<DpDxDO> dpDxDOList;

    @Schema(description = "北疆制单数据")
    private List<DpBjDO> dpBjDOList;

    @Schema(description = "南疆制单数据")
    private List<DpNjDO> dpNjDOList;
}